import router from "../router"
import $bus from "../utils/bus"

//全局前置钩子：只要进入页面之前都会调用

//1.返回值false，阻止路由的进入

//2.返回一个路径对象，中止进入to的路劲，转而进入return的路径

//需求：用户未登入的情况下，不允许访问其他的页面(判断是否有token,有就放行，没有重新跳转到登陆页面)

//如果登入了，就可以访问其他页面

router.beforeEach((to,from)=>{
    // console.log('===to',to);
    // console.log('===from',from);
    let token=sessionStorage.getItem('token')
    if(!token){
        //没有token,说明用户未登陆，只能访问登陆页
        if(to.path!=="/login"){
            //没登陆，且访问的不是登录页，那么重新给它跳转到登录页
            return{
                path:'/login'
            }
        }
    }    
})


//全局后置钩子
//路由元信息：每个路由都有一个meta属性，可以给路由配置添加一些额外的标识和属性
router.afterEach((to,from)=>{
    // console.log('====to',to);
    // console.log('====from',from);

    //通过to.matched属性，来获取面包屑需要的数据，要把数据传递给app组件中的data
    $bus.$emit('bread',to.matched)

})